Server apparatus, server control program, and server-client system

ABSTRACT

A server-client system includes a client terminal having a telephone function, and a server apparatus on a network. The terminal displays telephone number display screen data received form the server apparatus, and transmits, to the server apparatus, designation information indicating a telephone number position in the display screen, which is designated by a user. The server apparatus transmits designated telephone number outgoing call data to the terminal based on the designation information. The terminal makes an outgoing call in accordance with the telephone number outgoing call data received from the server apparatus.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority fromthe prior Japanese Patent Application No. 2006-173946, filed Jun. 23,2006, the entire contents of which are incorporated herein by reference.

BACKGROUND

Conventionally, in order to make a phone call from a communicationterminal such as a cellular phone, the communication terminal displaystelephone book data which contains a plurality of telephone numbers ofacquaintances and friends in advance. The user selects a desireddestination telephone number from the displayed telephone book data, andoperates an outgoing call button to make an outgoing call to theselected telephone number.

In this case, a memory in the communication terminal stores, as numberdata, each telephone number data contained in the telephone book data.Hence, the outgoing call can be made in accordance with the number datamerely by selecting the desired telephone number to make the outgoingcall.

However, if a third party comes into possession of such communicationterminal which has been lost or stolen, the third party may read outhighly confidential stored data, such as personal information, as wellas the telephone book data stored in the memory in the terminal.

On the other hand, in a recent server-client system, an SBC (ServerBased Computing) system [thin client system] has been introduced (e.g.,see Jpn. Pat. Appln. KOKAI Publication Nos. 2004-171063 and2003-158534). In this system, all applications which are input/outputand displayed by each communication terminal (a cellular phone, PC, orthe like) start and are executed by a server, and the server alsomanages all files generated along with these applications.

In such a thin client system, the drawing data of application softwareexecuted by the server is transferred to the communication terminal todisplay this drawing data on the communication terminal (e.g., see PCT(WO) 2004-503862).

Accordingly, in this thin client system, the server stores and managesthe telephone book data, transfers the drawing data to the communicationterminal, and causes it to display the transferred drawing data asneeded. This can prevent unauthorized access and disclosure of thetelephone book data even if a third party obtains the communicationterminal.

In the thin client system, however, any type of data transferred to andreceived from the server in response to the operation of thecommunication terminal is the drawing data generated in accordance withthe screen of the terminal. Hence, the communication terminal cannotmake an outgoing call by directly using the telephone book data receivedfrom the server and displayed on the communication terminal.

SUMMARY

A server apparatus, server control program, and server-client systemcapable of causing a communication terminal to make an outgoing call byusing telephone number data such as telephone book data stored andmanaged by a server in a thin client system are provided.

For example, there is provided a server-client system including a clientterminal having a telephone function, and a server apparatus on anetwork.

The terminal includes a telephone number designation transmissioncomponent for transmitting a telephone number instruction to the serverapparatus in response to a user operation, a telephone number displaycontrol component for displaying telephone number display screen datareceived from the server apparatus in response to transmission of thetelephone number instruction from the telephone number instructiontransmission component, a position designation information transmissioncomponent for transmitting, to the server apparatus, positiondesignation information in a telephone number display screen in responseto the user operation on a telephone number display screen displayed bythe telephone number display control component, and an outgoing callcontrol component for making an outgoing call in accordance withtelephone number outgoing call data received from the server apparatus,in response to the position designation information in the telephonenumber display screen, which is transmitted from the positiondesignation information transmission component.

The server apparatus includes a communication component forcommunicating with a terminal, a telephone number storage component forstoring telephone number data, a telephone number screen generationcomponent for, when the communication component receives a telephonenumber instruction from the terminal, generating telephone numberdisplay screen data based on the telephone number data stored in thetelephone number storage component, a telephone number screentransmission control component for controlling the communicationcomponent to transmit, to the terminal, the telephone number displayscreen data generated by the telephone number screen generationcomponent, an outgoing call data generation component for generatingoutgoing call data in accordance with a telephone number at a telephonenumber position corresponding to position designation information whenthe communication component receives the position designationinformation in the telephone number screen from the terminal after thetelephone number screen transmission control component transmits thetelephone number display screen data to the terminal, and a numberoutgoing call data transmission control component for controlling thecommunication component to transmit, to the terminal, the telephonenumber outgoing call data generated by the outgoing call data generationcomponent.

In the server-client system, the terminal controls an outgoing call inaccordance with outgoing call data such as a telephone number receivedfrom the server apparatus. Hence, confidentiality can be secured withoutstoring and holding the telephone number data in the terminal.Additionally, the terminal can also make the outgoing call upondesignating a desired telephone number position on a telephone numberdisplay screen, in the bitmap format or the like, which is transmittedfrom the server apparatus to the cellular phone and displayed on it.

Accordingly, a server apparatus, server control program, andserver-client system capable of causing the communication terminal tomake an outgoing call by using telephone number data stored and managedby the server in the thin client system are provided.

Advantages of the invention will be set forth in the description whichfollows, and in part will be obvious from the description, or may belearned by practice of the invention. Advantages of the invention may berealized and obtained by means of the instrumentalities and combinationsparticularly pointed out hereinafter.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate embodiments of the invention, andtogether with the general description given above and the detaileddescription of the embodiments given below, serve to explain theprinciples of the invention.

FIG. 1 is a view showing the entire arrangement of a server-clientsystem 10 according to an embodiment of the subject invention;

FIGS. 2A and 2B are front views showing the outer appearance of acellular phone 20 serving as a client terminal in the server-clientsystem 10, in which FIG. 2A is a view showing a state wherein acommunication progress screen W is displayed based on display of atelephone book list telephone number display screen G1 received from aserver apparatus 30, and FIG. 2B is a view showing a state wherein aconnection rejection alert screen G2 received from the server apparatus30 is displayed;

FIGS. 3A and 3B are block diagrams showing the arrangement of anelectronic circuit in the server-client system 10, in which FIG. 3A is ablock diagram showing the arrangement of the cellular phone 20 servingas the client terminal, and FIG. 3B is a block diagram showing thearrangement of the server apparatus 30;

FIGS. 4A and 4B are views showing the contents of telephone book displaydata obtained when the server apparatus 30 executes a telephone bookapplication process in response to an instruction to operate a telephonebook button 21 d on the cellular phone (terminal) 20 in theserver-client system 10, in which FIG. 4A is a view showing telephonebook list display data read out from a data storage unit 37 to a virtualscreen memory 35, and FIG. 4B is a view showing telephone book listdrawing data converted and generated in accordance with the screen sizeof the terminal by a display data conversion unit 36;

FIG. 5A is a flowchart showing the process executed by the cellularphone (terminal) 20 when making an outgoing call based on the telephonebook list displayed from the server apparatus 30 to the cellular phone(terminal) 20 in the server-client system 10 serving as a thin clientsystem;

FIG. 5B is a flowchart showing the process executed by the serverapparatus 30 when making the outgoing call based on the telephone booklist displayed from the server apparatus 30 to the cellular phone(terminal) 20 in the server-client system 10 serving as the thin clientsystem;

FIG. 6 is a flowchart showing a telephone number determination processexecuted along with the process of the server apparatus 30;

FIGS. 7A to 7C are views showing telephone number range designationdisplay states on the telephone book list telephone number displayscreen G1 displayed on the cellular phone (terminal) 20 in theserver-client system; and

FIGS. 8A to 8C are views showing telephone number error rangedesignation display states on the telephone book list telephone numberdisplay screen G1 displayed on the cellular phone (terminal) 20 in theserver-client system, and a number range reselection alert screen G3 asa range selection result.

DETAILED DESCRIPTION

FIG. 1 is a view showing an exemplary arrangement of a server-clientsystem 10 according to an embodiment of the subject invention.

The server-client system 10 serves as a thin client system including aserver apparatus 30 which can connect to a cellular phone 20 with aconventional telephone communication function as a client terminal on awireless LAN (Local Area Network). When the cellular phone 20 isconnected to the server apparatus 30 via an access point 40 of thewireless LAN, the server-client system 10 including the cellular phone20 and server apparatus 30 functions as a thin client system.

Note that the access point 40 of the wireless LAN may serve as theaccess point 40 in an intra-enterprise network, or the access point 40as a hotspot in a public wireless LAN in the Internet.

FIGS. 2A and 2B are front views showing the outer appearance of thecellular phone 20 serving as a client terminal in the server-clientsystem 10, in which FIG. 2A is a view showing a state wherein acommunication progress screen W is displayed based on display of atelephone book list telephone number display screen G1 received from theserver apparatus 30, and FIG. 2B is a view showing a state wherein aconnection rejection alert screen G2 received from the server apparatus30 is displayed.

A key input unit 21 is arranged at the lower portion on the frontsurface of the cellular phone 20, and a liquid crystal display unit 22is arranged at the upper portion on the front surface of the cellularphone 20. Alternatively, the key input unit 21 and the liquid crystaldisplay unit 22 can be oriented differently, such as side-by-side or ondifferent surfaces of a cellular phone (not shown).

The key input unit 21 includes text/symbol input keys 21 a to inputnumerical data and/or various text/symbol data, a cursor key 21 b tomove a cursor, a determination/execution key 21 c to instruct todetermine/execute an item selected by cursor movement, a telephone bookbutton 21 d to start a telephone book application, and an outgoingcall/incoming call button 21 e to instruct making or receiving anoutgoing call/incoming call.

FIGS. 3A and 3B are block diagrams showing the arrangement of anelectronic circuit in the server-client system 10, in which FIG. 3A is ablock diagram showing the arrangement of the cellular phone 20 servingas the client terminal, and FIG. 3B is a block diagram showing thearrangement of the server apparatus 30.

The cellular phone 20 includes a CPU (Central Processor Unit) 23 servingas a computer, which controls the operation of each part of the circuitin accordance with a cellular phone control program which is stored inadvance and executed by the CPU 23.

The CPU 23 connects to the key input unit 21 and the liquid crystaldisplay unit 22. Additionally, for example, the CPU 23 connects to awireless LAN communication unit 24 to connect to the server apparatus 30via the wireless LAN, an outgoing call/incoming call control unit 26 tocontrol a cellular phone network communication unit 25 that controls anoutgoing call/incoming call, a display data generation unit 27 togenerate display data in accordance with display drawing datatransferred from the server apparatus 30 to the cellular phone 20, awork memory 28, and a unique ID storage unit 29 which stores anidentifier (ID) unique to the cellular phone 20 for connectionauthentication to the server apparatus 30.

The cellular phone 20 functions as a conventional cellular phoneterminal when being used alone, but also functions as the clientterminal having the telephone communication function in the thin clientsystem when connected to the server apparatus 30. Although only onecellular phone is shown, the server-client system 10 may include aplurality of cellular phones.

The server apparatus 30 includes a CPU (Central Processor Unit) 31serving as a computer, which controls the operation of each part of thecircuit in accordance with a server control program which is stored inadvance and executed by the CPU 31.

The CPU 31 connects to a wireless LAN communication unit 32, a keycontrol unit 33, a display control unit 34 and virtual screen memory 35,a display data conversion unit 36, a data storage unit 37, and the like.The wireless LAN communication unit 32 communicates with various typesof client terminals on the network via the wireless LAN. The key controlunit 33 instructs the CPU 31 to execute an application processcorresponding to a key operation signal received from the clientterminal 20. The display control unit 34 and virtual screen memory 35store and hold, as display data for each terminal 20, the display datawhich is generated in accordance with the application processcorresponding to the key operation signal for each terminal 20. Thedisplay data conversion unit 36 converts the display data stored andheld in the virtual screen memory 35 for each terminal 20 into drawingdata so as to match the screen size of the display unit 22 of theterminal 20, extracts only a portion of the drawing data different fromthat generated for the terminal 20 immediately before the conversionprocess, and transfers the extracted drawing data to the terminal 20.The data storage unit 37 stores and registers an identifier (ID) 37 aunique to each terminal 20 capable of being connected to the serverapparatus 30, and stores and manages telephone book data 37 bcorresponding to the respective terminal IDs 37 a.

FIGS. 4A and 4B are views showing the contents of telephone book displaydata obtained when the server apparatus 30 executes a telephone bookapplication process in response to an instruction to operate thetelephone book button 21 d on the cellular phone (terminal) 20 in theserver-client system 10. FIG. 4A is a view showing telephone book listdisplay data read out from a data storage unit 37 to a virtual screenmemory 35, and FIG. 4B is a view showing a telephone number displayscreen indicating the telephone book list drawing data which isconverted in accordance with the screen size of the terminal by adisplay data conversion unit 36.

That is, upon reception of a telephone book application process startinstruction in response to the operation of the telephone book button 21d of the cellular phone (terminal) 20 which stores a unique identifier37 a to connect to the server apparatus 30, the server apparatus 30reads out the telephone book data 37 b stored and managed incorrespondence with the terminal IDs 37 a. As shown in FIG. 4A, thereadout data are expanded and stored in the virtual screen memory 35corresponding to the terminal 20, as telephone book list display screendata in the bitmap format or the like.

As shown in FIG. 4B, the display data conversion unit 36 converts thetelephone book list display data in the virtual screen memory 35 intothe telephone book list drawing data so as to match the screen size ofthe terminal which typically displays suitable items such as “name” and“telephone number”. The converted telephone book list drawing data isthen transferred to the cellular phone (terminal) 20 serving as a startinstruction source of the telephone book application process, anddisplayed on the cellular phone 20. The cellular phone (terminal) 20 maydisplay all or a portion of the telephone book list display data in thevirtual screen memory 35.

The telephone book data stored and managed by the server apparatus 30 inthe thin client system is transferred as the display screen data to thecellular phone 20, and displayed on the cellular phone 20. An operationperformed when an outgoing call is made by using the telephone number ofthe displayed telephone book list is described in detail below.

FIG. 5A is a flowchart showing the process executed by the cellularphone (terminal) 20 when making an outgoing call based on the telephonebook list displayed from the server apparatus 30 to the cellular phone(terminal) 20 in the server-client system 10 serving as the thin clientsystem.

FIG. 5B is a flowchart showing the process executed by the serverapparatus 30 when making an outgoing call based on the telephone booklist displayed from the server apparatus 30 to the cellular phone(terminal) 20 in the server-client system 10 serving as the thin clientsystem.

FIG. 6 is a flowchart showing a telephone number determination processexecuted along with the process of the server apparatus 30 when the useroperates the telephone book button 21 d in the key input unit 21 of thecellular phone (terminal) 20 to instruct the telephone book applicationto start, a connection request command and telephone book applicationstart instruction command for the server apparatus 30 are transmittedfrom the wireless LAN communication unit 24 to the server apparatus 30together with the terminal-unique ID read out from the unique ID storageunit 29 of the cellular phone (terminal) 20 (act A1 in the flowchartshown in FIG. 5A).

When the server apparatus 30 receives, via the wireless LANcommunication unit 32, a connection request command and telephone bookapplication start instruction command transmitted together with theterminal-unique ID from the cellular phone (terminal) 20, it isdetermined whether the received terminal-unique ID matches the terminalID 37 a stored in advance in the data storage unit 37 of the serverapparatus 30. As a result, “connection: OK” or “connection: NG” iscommunicated to the cellular phone (terminal) 20 to carry outauthentication (act B1).

In act B1, when “connection: OK” is received indicating positiveauthentication by determining that the terminal-unique ID received fromthe cellular phone (terminal) 20 matches the stored terminal ID 37 a, itis determined whether the telephone book data 37 b corresponding to theterminal ID 37 a is stored and managed by the data storage unit 37,i.e., whether the telephone book data 37 b is “present” or “absent” forunique terminal ID 37 a (act B2).

In act B2, when it is determined that the telephone book data 37 bcorresponding to the terminal ID 37 a of the connected cellular phone(terminal) 20 is “present”, the telephone book application processstarts (act B3). The telephone book list and its display data aregenerated based on the telephone book data 37 b, and stored in thevirtual screen memory 35 as shown in FIG. 4A (acts B4, B5, and B6).

After that, the display data conversion unit 36 converts the telephonebook list display data in the virtual screen memory 35 into the drawingdata in order to match the screen size of the terminal which typicallydisplays the items “name” and “telephone number” as shown in FIG. 4B(act B7). Although not shown, additional items from the telephone booklist display data in the virtual screen memory 35 may be include in thedrawing data. The converted drawing data is then transferred to theconnected cellular phone (terminal) 20 serving as a start request sourceof the telephone book application (act B8).

Upon receipt of the telephone book list drawing data transferred fromthe server apparatus 30, the cellular phone (terminal) 20 causes thedisplay data generation unit 27 to generate the drawing data as thedisplay data (act A2), and displays the obtained display data as thetelephone book list telephone number display screen G1 on the liquidcrystal display unit 22 as shown in FIG. 4B (act A3) (see FIG. 2A).

With this operation and system, even if the cellular phone (terminal) 20does not store and/or manage the telephone book data, the telephone bookdata securely maintained in the server apparatus 30 can be displayed asthe telephone book list on the display unit 22 of the cellular phone(terminal) 20.

On the other hand, when the server apparatus 30 communicates“connection: NG” due to failed authentication upon determining that theterminal-unique ID received from the cellular phone (terminal) 20 doesnot match the stored terminal ID 37 a, connection rejection alertdisplay data is generated, and stored and saved in the virtual screenmemory 35 (acts B9, B5, and B6). The display data is then converted intothe drawing data on the connection rejection alert screen G2 so as tomatch the screen size of the terminal (act B7). For example, as shown inFIG. 2B, the converted drawing data is transferred to the cellular phone(terminal) 20, and displayed on the liquid crystal display unit 22 (actsB8, A2, and A3).

As shown in act B2, when the server apparatus 30 determines that thetelephone book data 37 b corresponding to the terminal ID 37 a of theconnected cellular phone (terminal) 20 is “absent”, telephone bookabsent alert display data is generated, stored, and saved in the virtualscreen memory 35 (acts B10, B5, and B6). The generated display data isthen converted into the drawing data of the telephone book absent alertscreen (not shown) so as to match the screen size of the terminal (actB7). After that, the converted drawing data is transferred to thecellular phone (terminal) 20, and displayed on the liquid crystaldisplay unit 22 (acts B8, A2, and A3).

Note that the terminal display drawing data which is generated andstored in the virtual screen memory 35 of the server apparatus 30 isrewritten and updated only when its image changes. The drawing data isthen transferred to and displayed on the cellular phone (terminal) 20(acts B5 to B8→acts A2 and A3).

FIGS. 7A to 7C are views showing telephone number range designationdisplay states on the telephone book list telephone number displayscreen G1 displayed on the cellular phone (terminal) 20 in theserver-client system.

When it is determined that the user operates the cursor key 21 b in astate wherein the liquid crystal display unit 22 of the cellular phone20 displays the telephone book list display drawing data transferredfrom the server apparatus 30, as shown in FIG. 4B, in accordance withthe processes in act A1→acts B1 to B8→acts A2 and A3, the cursorposition data serving as a key operation event on the display screen istransmitted to the server apparatus 30 (act A4→step A5→act A6).

Upon receipt of the cursor position data serving as the key operationevent transmitted from the cellular phone 20 (act B11), the serverapparatus 30 notifies the active telephone book application process ofthe received cursor position data (act B12). A cursor K is written at aposition corresponding to the cursor position data, and the displayscreen is generated as the drawing data on the telephone book listtelephone number display screen G1 as shown in FIG. 7A. This drawingdata is then transferred to the cellular phone (terminal) 20, anddisplayed on the display unit 22 of the cellular phone (terminal) 20(act B5 to B8, A2, and A3).

As shown in FIG. 7A, when it is determined that thedetermination/execution key 21 c is operated in a state wherein thecursor K is moved to and displayed at the start position of a desiredtelephone number on the telephone book list telephone number displayscreen G1 displayed on the liquid crystal display unit 22 of thecellular phone (terminal) 20, a determination/execution ON signalserving as the key operation event is transmitted to the serverapparatus 30 (act A4→act A5→act A7).

Upon receipt of the determination/execution ON signal serving as the keyoperation event transmitted from the cellular phone 20 (act B11), theserver apparatus 30 notifies the active telephone book applicationprocess of the received determination/execution ON signal (act B13). Asshown in FIG. 7A, the position of the cursor K at the start position ofthe telephone number on the telephone book list telephone number displayscreen G1 is determined as the start position for range designationdisplay.

In this case, since the drawing data of the telephone book listtelephone number display screen G1 containing the cursor K generated andstored in the virtual screen memory 35 of the server apparatus 30 is notupdated at all, the drawing data is not updated (act B5→act B11).

In the cellular phone 20, assume that the cursor key 21 b moves thecursor K in the right direction to designate the range of the telephonenumber from the start position of the telephone number on the telephonebook list telephone number display screen G1 as shown in FIG. 7A. Inthis case, as the cursor position data is transmitted to the serverapparatus 30 (act A4→act A5→act A6), the server apparatus 30 generatesthe telephone book list telephone number display screen G1 with ahighlighted cursor designation range KH as shown in FIG. 7B (act B11→actB12→acts B5 to B7). The generated telephone book list telephone numberdisplay screen G1 is then transferred to the cellular phone (terminal)20 and displayed on the cellular phone (terminal) 20 (act B8→acts A2 andA3).

After that, the following processes are repeated as needed. That is, thecursor position data in response to the operation of the cursor key 21 bof the cellular phone 20 is transmitted to the server apparatus 30 (actA4→act A5→act A6). Upon reception of the cursor position data, theserver apparatus 30 generates the telephone book list telephone numberdisplay screen G1 with the highlighted cursor designation range KH, andtransmits the telephone book list telephone number display screen G1(act B11→act B12→acts B5 to B8). The cellular phone 20 then receives anddisplays the telephone book list telephone number display screen G1 withthe highlighted cursor designation range KH (acts A2 and A3). As shownin FIG. 7C, when it is determined that the user operates thedetermination/execution key 21 c in a state wherein the entire range ofthe desired telephone number [03-1234-5678] is highlighted as the cursordesignation range KH, the determination/execution ON signal as the keyoperation event is transmitted to the server apparatus 30 (act A4→actA5→act A7).

The server apparatus 30 receives the determination/execution ON signalas the key operation event transmitted from the cellular phone 20, andnotifies the active telephone book application process of thedetermination/execution ON signal (act B11→act B13). As shown in FIG.7C, the cursor designation range KH corresponding to the telephonenumber [03-1234-5678] on the telephone book list telephone numberdisplay screen G1 is determined as the selected range.

With this process and system, when it is determined that the useroperates the outgoing call/incoming call button 21 e in a state whereinthe display unit 22 of the cellular phone 20 displays the highlightedcursor designation range KH corresponding to the desired telephonenumber [03-1234-5678] on the telephone book list telephone numberdisplay screen G1, an outgoing call number request command serving asthe key operation event is transmitted to the server apparatus 30together with the terminal-unique ID stored in the unique ID storageunit 29 (act A4→act A8→act A9).

Upon reception of the outgoing call number request command serving asthe key operation event from the cellular phone 20 together with theterminal-unique ID (act B11), the server apparatus 30 starts a telephonenumber determination process as shown in FIG. 6 (act BC).

In this telephone number determination process, it is determined whetherthe terminal-unique ID received from the cellular phone (terminal) 20matches the terminal ID 37 a stored in the data storage unit 37, and“authentication: OK” or “authentication: NG” is determined (act C1).

In step C1, when “authentication: OK” is determined upon determiningthat the terminal-unique ID received from the cellular phone (terminal)20 matches the stored terminal ID 37 a, a character recognition processis performed for an image of the selected range serving as the cursordesignation range KH on the telephone book list telephone number displayscreen G1 which is converted by the display data conversion unit 36 andbased on the virtual screen memory 35 corresponding to the cellularphone (terminal) 20 (act C2). As a result, the recognized characterstring (in this case, the telephone number [0312345678]) is extracted(act C3).

The recognized character string obtained from the image of the selectedrange serving as the cursor designation range KH can be sequentiallycompared with a toll number database such as “03”, “04”, and “06”,cellular phone identification numbers such as “090” and “080”, and an IPphone identification number “050” which are stored in the data storageunit 37 in advance. It is then determined whether the recognizedcharacter string matches one of these numbers, and it is confirmedwhether the recognized character string is a telephone number (acts C4to C6).

For example, as shown in FIG. 7C, when the recognized character string[0312345678] obtained from the selected range serving as the cursordesignation range KH matches the toll number database, it is determinedthat the recognized character string is the telephone number (act C4).In this case, telephone number outgoing call data is generated inaccordance with the character code (numeric code) as the telephonenumber [0312345678] (act C7), and the communication progress screen W(see FIG. 2A) for notifying that an outgoing call communication to thistelephone number is in progress (act C8). After that, “OK” is set as areturn value to return to the main process of the server (act C9). Inthe above description, the character string is recognized from theselected range serving as the cursor designation range KH. However, thecharacter code as a display source may be directly read out to generatethe telephone number outgoing call data without recognizing thecharacter string when the character code as the display sourcecorresponding to the cursor designation range can be read out.

When it is determined that the return value is “OK” (act B14), thetelephone number outgoing call data corresponding to the telephonenumber [0312345678] generated in act C7 in the telephone numberdetermination process is transmitted to the cellular phone (terminal) 20(act B15).

Upon receipt of the telephone number outgoing call data [0312345678]from the server apparatus 30, the cellular phone (terminal) 20 transfersthe telephone number outgoing call data to the outgoing call/incomingcall control unit 26 to make the outgoing call via the cellular phonenetwork communication unit 25 (acts A12 and A13).

Along with this, the server apparatus 30 generates the display drawingdata in which the communication progress screen W generated in act C8 inthe telephone number determination process overlaps the telephone booklist telephone number display screen G1 with the highlighted cursordesignation range KH, and transfers the display drawing data to thecellular phone (terminal) 20 (acts B5 to B8). As shown in FIG. 2A, theliquid crystal display unit 22 of the cellular phone (terminal) 20displays the transferred display drawing data (acts A2 and A3).

As described above, the outgoing call can be made by selecting thedesired telephone number range on the telephone book list telephonenumber display screen G1 transferred from the server apparatus 30 anddisplayed as the drawing data on the cellular phone (terminal) 20. Inaddition, the cellular phone (terminal) 20 can display the telephonebook list telephone number display screen G1 which overlaps thecommunication progress screen W for notifying that the outgoing call tothe telephone number is in progress.

On the other hand, assume that in the telephone number determinationprocess (see FIG. 6) of the processes (see FIG. 5B) of the serverapparatus 30, as shown in, e.g., FIG. 8A or 8B, the recognized characterstring (acts C1 to C3) obtained from the image of the selected rangeserving as the cursor designation range KH on the telephone book listtelephone number display screen G1 does not match any of the toll numberdatabase, cellular phone identification number, and IP telephoneidentification number, and it is determined that the recognizedcharacter string is not the telephone number (acts C4 to C6 (mismatch)).In this case, a number range reselection alert screen G3 (see FIG. 8C)which prompts the user to reselect the telephone number is generated(act C10), and “NG” is set as the return value to return to the mainprocess (step C11).

Upon determining that the return value is “NG” (act B14), the serverapparatus 30 generates the display drawing data in which the numberrange reselection alert screen G3 generated in act C10 in the telephonenumber determination process overlaps the telephone book list telephonenumber display screen G1, and transfers the display drawing data to thecellular phone (terminal) 20 (acts B5 to B8). As shown in FIG. 8C, theliquid crystal display unit 22 of the cellular phone (terminal) 20displays the transferred drawing data to prompt the user to reselect thetelephone number (acts A2 and A3).

FIGS. 8A to 8C are views showing telephone number error rangedesignation display states on the telephone book list telephone numberdisplay screen G1 displayed on the cellular phone (terminal) 20 in theserver-client system, and a number range reselection alert screen G3 asa range selection result.

Assume that when the process shifts to the telephone numberdetermination process (see FIG. 6) of the processes (see FIG. 5B) of theserver apparatus 30, the terminal-unique ID received from the cellularphone (terminal) 20 does not match the stored terminal ID 37 a, and“authentication: NG” is determined (act C1). In this case, theconnection rejection alert display data is generated (act C12), and “NG”is set as the return value to return to the main process (act C13).

Upon determining that the return value is “NG” (act B14), the serverapparatus 30 generates the display drawing data of the connectionrejection alert screen G2 generated in act C12 in the telephone numberdetermination process, and transfers the display drawing data to thecellular phone (terminal) 20 (acts B5 to B8). For example, as shown inFIG. 2B, the liquid crystal display unit 22 of the cellular phone(terminal) 20 displays the transferred display drawing data (acts A2 andA3).

Accordingly, in the server-client system 10 having the above-describedconfiguration, when the user operates the telephone book button 21 d ofthe cellular phone (terminal) 20, the cellular phone (terminal) 20transmits the start instruction command of the telephone bookapplication to the server apparatus 30 together with the terminal-uniqueID and connection request command. The server apparatus 30 reads out thetelephone book data stored and managed in correspondence with theterminal-unique ID, generates the telephone book list telephone numberdisplay screen G1, and transfers it to the cellular phone (terminal) 20to display it. Assume that the range of the desired telephone number isselected by the cursor K on the telephone book list telephone numberdisplay screen G1 displayed by the cellular phone (terminal) 20, thecursor designation range KH is displayed and confirmed by operating theserver apparatus 30 based on the key operation signal, and the useroperates the call origination/termination button 21 e. In this case, theserver apparatus 30 performs the character recognition process for aportion corresponding to the cursor designation range KH on thetelephone book list telephone number display screen G1. The serverapparatus 30 then generates the outgoing call data in accordance withthe numeric code of the telephone number as the character recognitionresult, and transfers it to the cellular phone (terminal) 20 to executeoutgoing call control.

Therefore, confidentiality can be secured and communications performedwithout storing and holding the telephone book data in the cellularphone (terminal) 20. Additionally, the desired telephone number can beselected even from the telephone book list telephone number displayscreen G1 serving as the bitmap data transferred from the serverapparatus 30 and displayed on the cellular phone (terminal) 20 to makean outgoing call.

Note that in the server-client system 10 of this embodiment, thecharacter recognition process is performed for the portion correspondingto the cursor designation range KH on the telephone book list telephonenumber display screen G1 to determine whether the portion is thetelephone number, and the telephone number outgoing call data isgenerated in accordance with the character code (numeric code) of therecognized character string. However, the processes and systemsdescribed herein are not limited to this operation. For example, whenthe user operates the outgoing call/incoming call button 21 e, thecharacter recognition process may be performed for the image data aroundthe cursor position without designating and displaying the cursordesignation range KH, and the telephone number designated by the cursormay be extracted. Note that it is not always necessary to display thetelephone book list. A similar process can also apply when displayingthe telephone number display screen added to a document or the liketransferred from the server apparatus 30 to the cellular phone(terminal) 20.

Also, the server-client system 10 described herein may be not only anetwork based on a wireless LAN but also a network based on a wired LANor fixed telephone line.

Note that each processing technique in the server-client system 10 asdescribed herein, i.e., an entire operation control process of theserver apparatus 30 shown in the flowchart in FIG. 5B, or the telephonenumber determination process along with the entire operation controlprocess of the server apparatus 30 shown in the flowchart in FIG. 6 canbe distributed as a computer-executable program stored in an externalrecording device such as a memory card (ROM card, RAM card, or thelike), magnetic disk (floppy disk, hard disk, or the like), optical disk(CD-ROM, DVD, or the like), and semiconductor memory. The computer (CPU31) of the server apparatus 30 loads the program in a storage device(data storage unit 37) from the external recording medium and controlsthe operation in accordance with the loaded program. As a result, thetelephone outgoing call control function is implemented in the cellularphone (terminal) 20 serving as a thin client terminal by using thetelephone book data stored and managed by the server apparatus 30 asdescribed herein to implement the same process by the above-describedtechnique.

Program data used to implement the above-described technique can betransmitted as a program code via a communication network, such as aLAN. The storage device (data storage unit 37) loads the program datareceived from the computer apparatus (program server) connected to thecommunication network (LAN), and the cellular phone (terminal) 20serving as the thin client terminal can implement the telephone outgoingcall control function by using the telephone book data stored andmanaged by the server apparatus 30.

As utilized herein, the term “component” is intended to refer to acomputer-related entity including computers, servers, and cellularphones, either hardware, software (e.g., in execution), and/or firmware.For example, a component can be a process running on a processor, aprocessor, a circuit, an object, an executable, a program, and/or acomputer. By way of illustration, both an application running on aserver and the server can be a component. One or more components canreside within a process and a component can be localized on one computerand/or distributed between two or more computers.

Furthermore, the claimed subject matter may be implemented as a method,apparatus, or system using standard programming and/or engineeringtechniques to produce software, firmware, hardware, devices, systems orany combination thereof to control a computer-related entity toimplement the disclosed subject matter.

In regard to the various functions performed by the above describedcomponents, devices, circuits, systems, processes, and the like, theterms (including a reference to a “means”) used to describe suchcomponents are intended to correspond, unless otherwise indicated, toany component which performs the specified function of the describedcomponent (e.g., a functional equivalent), even though not structurallyequivalent to the disclosed structure, which performs the function inthe herein illustrated exemplary aspects of the claimed subject matter.In this regard, it is also to be recognized that the innovation includesa system as well as a computer-readable medium havingcomputer-executable instructions for performing the acts and/or eventsof the various methods of the claimed subject matter.

Additional advantages and modifications will readily occur to thoseskilled in the art. Therefore, the invention in its broader aspects isnot limited to the specific details and representative embodiments shownand described herein. Accordingly, various modifications may be madewithout departing from the spirit or scope of the general inventiveconcept as defined by the appended claims and their equivalents.

1. A server apparatus comprising: a communication component forcommunicating with a terminal having a telephone function; a telephonenumber storage component for storing telephone number data; a telephonenumber screen generation component for generating telephone numberdisplay screen data based on the telephone number data stored in thetelephone number storage component; a telephone number screentransmission control component for controlling the communicationcomponent to transmit, to the terminal, the telephone number displayscreen data generated by the telephone number screen generationcomponent; an outgoing call data generation component for generatingoutgoing call data in accordance with a telephone number at a telephonenumber position corresponding to position designation information whenthe communication component receives the position designationinformation in the telephone number screen from the terminal after thetelephone number screen transmission control component transmits thetelephone number display screen data to the terminal; and a numberoutgoing call data transmission control component for controlling thecommunication component to transmit, to the terminal, the telephonenumber outgoing call data generated by the outgoing call data generationcomponent.
 2. The apparatus according to claim 1, wherein the telephonenumber display screen data generated by the telephone number screengeneration component generates telephone number list display screen datacontaining a plurality of telephone numbers, and telephone number listposition designation information received from the terminal by thecommunication component is range designation information, and theoutgoing call data generation component comprises a telephone numberextraction component for extracting a telephone number from a telephonenumber list range corresponding to the range designation information,and generates the outgoing call data in accordance with the telephonenumber extracted by the telephone number extraction component.
 3. Theapparatus according to claim 2, wherein the telephone number extractioncomponent performs a character recognition process for the telephonenumber list range corresponding to the range designation information toextract a telephone number.
 4. The apparatus according to claim 1, whichfurther comprises a terminal identifier storage component for storing aterminal identifier which is stored in advance, and in which thetelephone number screen generation component includes terminalauthentication component for, when the communication means receives atelephone number instruction together with the terminal identifier fromthe terminal, authenticating whether the terminal is a terminal storedin advance, based on the terminal identifier stored in the terminalidentifier storage component, and generates the telephone number displayscreen data based on the telephone number data in the telephone numberstorage component when the terminal authentication means authenticatesthat the terminal is the terminal stored in advance.
 5. The apparatusaccording to claim 2, which further comprises a terminal identifierstorage component for storing a terminal identifier which is stored inadvance, and in which the telephone number screen generation componentincludes terminal authentication component for, when the communicationmeans receives a telephone number instruction together with the terminalidentifier from the terminal, authenticating whether the terminal is aterminal stored in advance, based on the terminal identifier stored inthe terminal identifier storage component, and generates the telephonenumber display screen data based on the telephone number data in thetelephone number storage component when the terminal authenticationmeans authenticates that the terminal is the terminal stored in advance.6. The apparatus according to claim 3, which further comprises aterminal identifier storage component for storing a terminal identifierwhich is stored in advance, and in which the telephone number screengeneration component includes terminal authentication component for,when the communication means receives a telephone number instructiontogether with the terminal identifier from the terminal, authenticatingwhether the terminal is a terminal stored in advance, based on theterminal identifier stored in the terminal identifier storage component,and generates the telephone number display screen data based on thetelephone number data in the telephone number storage component when theterminal authentication means authenticates that the terminal is theterminal stored in advance.
 7. A server control program recorded in arecording medium to control a computer of a server apparatus connectedto a communication network and configured to comprise a telephone numberstorage component for storing telephone number data, the computer of theserver apparatus functioning as a communication component forcommunicating with a terminal having a telephone function on thenetwork, a telephone number screen generation component for, when thecommunication component receives a telephone number instruction from theterminal, generating telephone number display screen data based on thetelephone number data stored in the telephone number storage component,a telephone number screen transmission control component for controllingthe communication component to transmit, to the terminal, the telephonenumber display screen data generated by the telephone number screengeneration component, an outgoing call data generation component forgenerating outgoing call data in accordance with a telephone number at atelephone number screen position corresponding to position designationinformation when the communication component receives telephone numberscreen position designation information from the terminal after thetelephone number screen transmission control component transmits thetelephone number display screen data to the terminal, and a numberoutgoing call data transmission control component for controlling thecommunication component to transmit, to the terminal, the telephonenumber outgoing call data generated by the outgoing call data generationcomponent.
 8. The server control program according to claim 7, theoutgoing call data generation component comprising a telephone numberextraction component for extracting a telephone number from a telephonenumber list range, and generates the outgoing call data in accordancewith the telephone number extracted by the telephone number extractioncomponent.
 9. The server control program according to claim 8, whereinthe telephone number extraction component performs a characterrecognition process for the telephone number list range to extract atelephone number.
 10. A server-client system comprising a clientterminal having a telephone function, and a server apparatus on anetwork, the terminal further comprising a telephone number designationtransmission component for transmitting a telephone number instructionto the server apparatus in response to a user operation, a telephonenumber display control component for displaying telephone number displayscreen data received from the server apparatus in response totransmission of the telephone number instruction from the telephonenumber instruction transmission component, a position designationinformation transmission component for transmitting, to the serverapparatus, position designation information in a telephone numberdisplay screen in response to the user operation on a telephone numberdisplay screen displayed by the telephone number display controlcomponent, and an outgoing call control component for making an outgoingcall in accordance with telephone number outgoing call data receivedfrom the server apparatus, in response to the position designationinformation in the telephone number display screen, which is transmittedfrom the position designation information transmission component, andthe server apparatus further comprising a communication component forcommunicating with a terminal, a telephone number storage component forstoring telephone number data, a telephone number screen generationcomponent for, when the communication means receives a telephone numberinstruction from the terminal, generating telephone number displayscreen data based on the telephone number data stored in the telephonenumber storage component, a telephone number screen transmission controlcomponent for controlling the communication means to transmit, to theterminal, the telephone number display screen data generated by thetelephone number screen generation component, an outgoing call datageneration component for generating outgoing call data in accordancewith a telephone number at a telephone number position corresponding toposition designation information when the communication componentreceives the position designation information in the telephone numberscreen from the terminal after the telephone number screen transmissioncontrol component transmits the telephone number display screen data tothe terminal, and number outgoing call data transmission controlcomponent for controlling the communication component to transmit, tothe terminal, the telephone number outgoing call data generated by theoutgoing call data generation component.
 11. The server-client systemaccording to claim 10, wherein the client terminal comprises a cellularphone.
 12. The server-client system according to claim 10, wherein thetelephone number display screen data generated by the telephone numberscreen generation component generates telephone number list displayscreen data containing a plurality of telephone numbers, and telephonenumber list position designation information received from the terminalby the communication component is range designation information.
 13. Theserver-client system according to claim 12, wherein the outgoing calldata generation component comprises a telephone number extractioncomponent for extracting a telephone number from a telephone number listrange corresponding to the range designation information, and generatesthe outgoing call data in accordance with the telephone number extractedby the telephone number extraction component.
 14. The server-clientsystem according to claim 13, wherein the telephone number extractioncomponent performs a character recognition process for the telephonenumber list range corresponding to the range designation information toextract a telephone number.
 15. The server-client system according toclaim 10, the server apparatus further comprising a terminal identifierstorage component for storing a terminal identifier which is stored inadvance, and in which the telephone number screen generation componentincludes terminal authentication component for, when the communicationmeans receives a telephone number instruction together with the terminalidentifier from the terminal, authenticating whether the terminal is aterminal stored in advance, based on the terminal identifier stored inthe terminal identifier storage component, and generates the telephonenumber display screen data based on the telephone number data in thetelephone number storage component when the terminal authenticationmeans authenticates that the terminal is the terminal stored in advance.16. The server-client system according to claim 12, the server apparatusfurther comprises a terminal identifier storage component for storing aterminal identifier which is stored in advance, and in which thetelephone number screen generation component includes terminalauthentication component for, when the communication means receives atelephone number instruction together with the terminal identifier fromthe terminal, authenticating whether the terminal is a terminal storedin advance, based on the terminal identifier stored in the terminalidentifier storage component, and generates the telephone number displayscreen data based on the telephone number data in the telephone numberstorage component when the terminal authentication means authenticatesthat the terminal is the terminal stored in advance.
 17. Theserver-client system according to claim 13, the server apparatus furthercomprises a terminal identifier storage component for storing a terminalidentifier which is stored in advance, and in which the telephone numberscreen generation component includes terminal authentication componentfor, when the communication means receives a telephone numberinstruction together with the terminal identifier from the terminal,authenticating whether the terminal is a terminal stored in advance,based on the terminal identifier stored in the terminal identifierstorage component, and generates the telephone number display screendata based on the telephone number data in the telephone number storagecomponent when the terminal authentication means authenticates that theterminal is the terminal stored in advance.
 18. The server-client systemaccording to claim 14, the server apparatus further comprises a terminalidentifier storage component for storing a terminal identifier which isstored in advance, and in which the telephone number screen generationcomponent includes terminal authentication component for, when thecommunication means receives a telephone number instruction togetherwith the terminal identifier from the terminal, authenticating whetherthe terminal is a terminal stored in advance, based on the terminalidentifier stored in the terminal identifier storage component, andgenerates the telephone number display screen data based on thetelephone number data in the telephone number storage component when theterminal authentication means authenticates that the terminal is theterminal stored in advance.
 19. The server-client system according toclaim 12, wherein the client terminal comprises a cellular phone. 20.The server-client system according to claim 15, wherein the clientterminal comprises a cellular phone.